package com.echronos.payment.commons.cpcn.util;

import lombok.Data;

/**
 * @Author wangyadong
 * @Date 2022/11/28 14:07
 * @ClassName CcbResponse
 */
@Data
public abstract class CpcnResponse {

    /**
     * 成功状态
     */
    private Boolean isSuccess = false;

    /**
     * 响应代码，2000 表示交易请求受理成功
     */
    private String code;
    /**
     * 响应消息，OK.表示交易请求受理成功
     */
    private String message;
    /**
     * 机构编号
     */
    private String institutionID;
    /**
     * 交易流水号
     */
    private String txSN;
    /**
     * 状态:
     * 10=受理成功
     * 15=待短信验证
     * 17=待被动打款验证
     * 18=被动已
     * 20=处理中
     * 28=待账户验证
     * 29=审核中
     * 30=成功
     * 40=失败
     */
    private String status;
    /**
     * 响应时间
     */
    private String responseTime;
    /**
     * 响应码
     */
    private String responseCode;
    /**
     * 响应消息
     */
    private String responseMessage;

    public Boolean getIsSuccess() {
        if ("2000".equals(this.code)) {
            this.isSuccess = true;
        } else {
            this.isSuccess = false;
        }
        return isSuccess;
    }

    /**
     * 请求接口信息json格式
     */
    private String req;

    /**
     * 接口响应信息json格式
     */
    private String resp;
}
